package DesignPatterns.singleton;

/**
 * 线程安全的懒加载单例
 * 这是对上一个懒加载的改进，但是依然存在问题，虽然实现了懒加载，也增加了安全锁，但是锁的粒度太大
 * 优点：安全、懒加载
 * 缺点：高并发时效率不高
 */
public class Single4 {
    private static Single4 single;
    private Single4(){

    }
    //增加安全锁
    private static synchronized Single4 getInstance(){
        if(single==null){
            single=new Single4();
        }
        return single;
    }
}
